package com.wicket.okrbff.biz.service.dto.common;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.ArrayList;
import javax.validation.constraints.NotNull;
import lombok.Data;
import java.util.Objects;
    
    
    /**
     * @desc BffAssistNodeStatusDto
     * @使用场景
     */
    @Data
    public class BffAssistNodeStatusDto  implements Serializable {
      
    /**
     * 节点内容对象实例ID 
     */
    @ApiModelProperty("节点内容对象实例ID")
    private String	 assistNodeTypeObjectId;

    /**
     * 内容节点状态ID 
     */
    @ApiModelProperty("内容节点状态ID")
    private String	 assistNodeStatusId;

    /**
     * 是否本级完成 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否本级完成")
    private String	 currentLevelComplete;
/**
     * 主题内容ID 
     */
    @NotNull(message = "主题内容ID不能为空")
@ApiModelProperty("主题内容ID")
    private String	 themeContentId;
/**
     * 是否已完成 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否已完成")
    private String	 isComplete;
/**
     * 展示状态 OT_ARRANGE:未安排 IN_ARRANGEMENT:安排中 HAVE_ARRANGE:已安排 NOT_AT_THE:未开始 ONGOING:进行中 STAGES_COMPLETE:阶段完成 COMPLETE:全部完成
     */
    @ApiModelProperty("展示状态")
    private String	 displayStatus;

    /**
     * 是否下级完成 TRUE:是 FALSE:否
     */
    @ApiModelProperty("是否下级完成")
    private String	 nextLevelComplete;
@Override
  public boolean equals(Object o) {
      if (this == o) return true;
      if (o == null || getClass() != o.getClass()) return false;
      if (!super.equals(o)) return false;
      BffAssistNodeStatusDto that = (BffAssistNodeStatusDto) o;
      return  assistNodeTypeObjectId == that.assistNodeTypeObjectId&&assistNodeStatusId == that.assistNodeStatusId&&currentLevelComplete == that.currentLevelComplete&&themeContentId == that.themeContentId&&isComplete == that.isComplete&&displayStatus == that.displayStatus&&nextLevelComplete == that.nextLevelComplete;
    }
@Override
  public int hashCode() {
      return Objects.hash(super.hashCode(), assistNodeTypeObjectId,assistNodeStatusId,currentLevelComplete,themeContentId,isComplete,displayStatus,nextLevelComplete);
    }
    
      

    }
   